home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Atari Compendium
/
The Atari Compendium (Toad Computers) (1994).iso
/
files
/
umich
/
utils
/
tosfixes
/
hsmoda06.lzh
/
SETTER.TOS
/
SETTER.GER
< prev
next >
Wrap
Text File
|
1994-08-31
|
5KB
|
141 lines
SETTER.TTP, ein Konfigurator
****************************
Die kleinen ASCII-Textfiles, mit denen viele Programme konfiguriert
werden, sind mir auf die Nerven gegangen. Sie haben zwar den Vorteil der
Änderbarkeit mit jedem Texteditor, liegen als Nachteil aber mit im
Verzeichnis rum und sind trotzdem oft nicht da, wo sie sein sollten.
Deshalb habe ich die Konfigurationsinformationen direkt im Programm
untergebracht und mit einer kurzen Erklärung versehen. Bei residenten
Programmen liegen diese Erklärungen natürlich im nichtresidenten Teil
(kein Problem bei Assemblerprogrammierung). Konfiguriert werden solche
Programme mit SETTER, das die Informationen und Erklärungen aus dem
Programm liest und die Konfiguration wieder im Programm speichert.
Nutzung
-------
Ab TOS1.04 oder mit einem entsprechenden Desktop-Ersatz zieht man das zu
bearbeitende Programm mit der Maus auf SETTER.TTP. Man kann SETTER auch
per Doppelklick starten (mit dem Desktop von TOS1.00 und 1.02 geht es nur
so) und den Namen (und eventuell Pfad) des zu bearbeitenden Programms per
Hand eintippen. SETTER erkennt mit sehr hoher Sicherheit automatisch, ob
das Programm konfigurierbar ist oder nicht.
Ist es konfigurierbar, so wird jeweils eine Option angezeigt und eine neue
Angabe dafür erwartet. Alle Eingaben werden mit der Return-Taste
abgeschlossen. Alles andere sollte sich selbst erklären. Zum Schluß wird
noch gefragt, ob man die Änderungen wirklich speichern möchte.
Falls Fehler auftreten, hat SETTER einige Meldungen dafür übrig.
Copyright
---------
SETTER.TTP darf zusammen mit diesem Text frei kopiert werden. Die C-Quelle
SETTER.C darf nur zusammen mit SETTER.TTP und SETTER.TXT kopiert werden.
Ich hafte natürlich in keinster Weise für irgendwelche Auswirkungen oder
Nichtwirkungen, die der Einsatz oder Nichteinsatz von SETTER.* hat.
Möglicherweise finden auch andere Programmierer SETTER nützlich, bitte,
ihr dürft es benutzen. Aber!:
Wenn jemand eine erweiterte Version von SETTER in Umlauf bringt, muß:
- diese ebenfalls frei kopierbar sein.
- diese entsprechend gekennzeichnet sein.
- er mir eine Nachricht, besser ein Exemplar, kostenlos zukommen lassen.
Ich kann es nicht ausstehen, wenn jemand meine Spezifikation ändert.
Erweitern ist erlaubt und erwünscht, aber bitte keine bereits vorhandenen
Kommandos ändern.
Mein Dank gilt Wolfgang Wander, der diesen meinen C-Programmierversuch
entfehlert hat. (Sonst hätte ich SETTER nochmal, in Assembler, schreiben
müssen.)
"Ich" bin: Harun Scheutzow,
zu erreichen im Internet über
Harun_Scheutzow@B.maus.de
bzw. im Mausnetz: Harun Scheutzow @B
oder per Post:
Harun Scheutzow
Dresdener Straße 83
D-10179 Berlin, Deutschland
GEM-Version von SETTER
----------------------
Ich habe SETTER der Einfachheit und Kürze wegen als TTP geschrieben.
Markus Kohm fand die Idee von SETTER gut und hat eine GEM-konforme Version
entwickelt, die einige Funktionen mehr bietet. Diese Version ist ebenfalls
in Mailboxen zu finden. Sie sollte als SETTER.ZIP in der Maus KA liegen.
Zum Zeitpunkt der Texterstellung gültige Daten der Maus KA: Telefonnummer
0721-358887, Gastdownload 08.00-18.00 und 20.00-03.00. Markus Kohm ist per
Internet-Email unter: Markus_Kohm@KA2.maus.de zu erreichen.
Wer andere SETTER schreiben will oder weitere Datentypen braucht, sollte
sich zuerst diese GEM-Version ansehen.
Versionen
---------
SETTER gibt beim Start das Erstellungsdatum als Jahr-Monat-Tag aus, wobei
neuere Versionen hoffentlich funktionell weiter- und fehlermäßig zurück-
entwickelt sind.
1993-11-27 String-Eingabe implementiert
1994-01-09 Englische Meldungen ergänzt, minimale Korrektur
1994-05-07 Läuft jetzt auch unter TOS4.xx (auf Falcon)
(Der reine Anwender braucht nicht weiter zu lesen.)
Spezifikation des Speicherns modifizierbarer Informationen in Programmen
------------------------------------------------------------------------
Harun Scheutzow, 21.11.1993
Die Modifikation erfolgt durch ein SETTER.TTP, welches das Programm
bearbeitet, dessen Einsstellungen zu verändern sind.
Im TEXT- oder DATA-Segment befindet sich auf einer geraden Adresse der
nullterminierte String "hAruNs cONfigER" (inklusive 0-Byte genau 16 Zeichen
lang) und dahinter ein LONG-Zeiger auf den Anfang des Strings. In
Assembler:
.even
hkbg:
.dc.b "hAruNs cONfigER",0
.dc.l hkbg
Darauf folgen als Liste die einzelnen Objekte, die aus Anzeigetext,
Art der Konfiguration und Konfigurationsplatz bestehen.
Der Anzeigetext ist ein C-String (also nullterminiert) und auf die nächste
gerade Adresse evtl. mit einem zusätzlichen 0-Byte aufgefüllt. Ist der
Anzeigestring leer (nur 0-Byte), so endet hier die Liste der Objekte.
Das Konfigurationskommando ist ein WORD (16Bit) mit folgenden möglichen
Werten im Highbyte:
0
Ja/Nein Entscheidung. Das folgende WORD wird für JA auf $FFFF und für
NEIN auf $0000 gesetzt.
1
LONG-Werteingabe-Liste. Im Lowbyte steht die Anzahl der Listenelemente.
Die folgenden LONG werden auf die Werte der eingegebenen 32-Bit-Integer
gesetzt. Die interne ungültig-Kennung für einen Platz ist $80000000.
2
String-Eingabe. Im Lowbyte steht die Maximallänge des Eingabestrings
inklusive des abschließenden Nullbytes. Diese Länge muß gerade sein. Der
eingegebene String wird unmittelbar hier hinter abgelegt und bis zur
Maximallänge mit 0-Bytes aufgefüllt.
---EOF---